package main

import (
	_ "loghub/bin"
	"loghub/controllers"
	_ "loghub/db"
	"loghub/ws"
	"os"
	"path/filepath"

	"github.com/kataras/iris/v12"
	"github.com/lucas-clemente/quic-go/http3"
)

func main() {
	app := iris.Default()

	// 注册视图引擎, 发布release版本Reload参数需要改为false
	app.RegisterView(iris.HTML("./wwwroot/view", ".html").Reload(true))

	// 注册视图文件目录, 不需要再为每个视图注册路由, 可以使用vue.js请求api获取数据
	app.HandleDir("/view", "./wwwroot/view")
	app.HandleDir("/wwwroot", "./wwwroot")

	controllers.RegisterIndexController(app)
	controllers.RegisterLogController(app)
	ws.RegisterWsLogServer(app)

	dir := filepath.Dir(os.Args[0])
	// app.Run(iris.Addr(":12080"))
	// 先修改host文件, 127.0.0.1  kizuna.top 	使用 https://kizuna.top 访问
	app.Run(iris.Raw(func() error {
		return http3.ListenAndServe(":443", dir+"/wwwroot/minica.pem", dir+"/wwwroot/minica-key.pem", app)
	}), iris.WithOptimizations)
}
